package map;

import java.util.HashMap;
import java.util.Map;

/**
 * java.util.Map 接口
 * Map称为查找表，体现的结构是一个多行两列的表格。其中左列称为key,右列称为value.
 * Map总是根据key获取对应的value。
 *
 * 常用实现类:
 * java.util.HashMap:称为散列表，哈希表。是使用散列算法实现的Map，当今查询速度最快的
 *                   数据结构
 * java.util.TreeMap:使用二叉树算法实现的Map
 */
public class MapDemo1 {
    public static void main(String[] args) {
        Map<String,Integer> map = new HashMap<>();
        Integer value = map.put("语文",99);
        System.out.println(value);
        map.put("英语",57);
        map.put("数学",66);
        map.put("物理",99);
        map.put("化学",32);
        map.put("体育",78);
        System.out.println(map);
        value = map.put("物理",30);
        System.out.println(map);
        System.out.println(value);
        value = map.get("化学");
        System.out.println(value);
        value = map.get("生物");
        System.out.println(value);
        int size = map.size();
        System.out.println(size);
        boolean empty = map.isEmpty();
        System.out.println(empty);
//        map.clear();
//        System.out.println(map);
        boolean b = map.containsKey("生物");
        System.out.println(b);
        b = map.containsValue(78);
        System.out.println(b);
        Integer i = map.remove("英语");
        System.out.println(i);
        System.out.println(map);
    }

}
